package cn.melonlib.cores.model.anno;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

/**
 * 定义参数
 */
@Documented
@Target(PARAMETER)
@Retention(RUNTIME)
public @interface WorkerParameter {
    /**
     * 参数名称
     * @return
     */
    String value() default "";

    /**
     * 参数类型转换类
     * @return
     */
    String converter() default "defaultConverter";

    /**
     * 是否能为空
     * @return
     */
    boolean required() default false;

    /**
     * 参数注释
     * @return
     */
    String comment() default "";
}
